Abstract
本文主要目的是为了产生linguistically coherent representations
,其中使用了sentiment lexicons
, negation words
, 和intensity words
。
Introduction
让计算机能够理解情感一直是AI
的核心任务,有许多方法来实现,比如lexicon-based classification
以及早期的machine learning based methods
,最新的还有CNN
,recursive autoencoders
和LSTM
。
- 树形结构的模型,例如
recursive autoencoder
和Tree-LSTM
都是需要短语级的标注语料信息,如果只使用句子级的标注信息的话,它们的性能将会大大下降。 - 序列模型,例如
CNN
和RNN
难以产生在论文中记载的很好的效果。 - 很多的语言学知识没有应用到神经网络模型中。
这个工作的目标是设计一个简单的序列模型,然后使用语言学资源来帮助情感分类。
- 不用树形结构的模型,避免人工标注短语级语料
- 使用三种语言学信息:
sentiment lexicon
,negation words
,intensity words
。
Related Work
- Neural Networks for Sentiment Classification
- Applying Linguistic Knowledge for Sentiment Classification
否定词在修改文本情感中扮演关键角色。因为每个单独的否定词会影响情感词,shifting hypothesis
被提出来,假定否定动作对情感值的影响是一个常量。
intensity words
可以改变情感的强度。这对于fine-grained
的情感分析是很有用的。
Models
- Long Short-Term Memory(LSTM)
- Bidirectional LSTM
Linguistically Regularized LSTM
当遇到情感词之后,句子的情感应该跟遇到之前有很大的不同。比如this movie is interesting
,从左往右走this*
,this movie*
和this moive is*
应该是几乎一样的,而this movie is very interesting*
应该和前面几个完全不同(*
代表当前的位置)。因为interesting
已经被看到了。
Non-Sentiment Regularizer
如果两个相邻的词是non-opinion
的词,那么两个情感分布应该是尽可能相近的。Sentiment Regularizer
如果词是情感词,那么情感分布应该和前后位置的情感分布不同Negation Regularizer
碰到否定词会让情感飘逸。Intensity Regularizer
遇到intensity
让情感加深。
Modified Loss function
$E(\theta)=-\sum_i y^i log p^i + \alpha \sum_i \sum_j L_t^i + \beta ||\theta||^2$
在Sentiment Regularizer
中,所有的同一类型的情感词共用drifting distribution
。这里也可以根据大规模的训练集来学习不同的词的情感漂移。